package com.the_ring.chapter08.widget;

import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
import android.view.ViewGroup;
import android.widget.DatePicker;

public class MonthPicker extends DatePicker {

    public MonthPicker(Context context) {
        super(context);
    }

    public MonthPicker(Context context, AttributeSet attrs) {
        super(context, attrs);
        // 获取年月日的下拉选择列表项
        ViewGroup vg = (ViewGroup) ((ViewGroup) getChildAt(0)).getChildAt(0);
        if (vg.getChildCount() == 3) { // 拥有 3 个下级视图
            // 有的机型显示格式为“年月日”，此时隐藏第 3 个控件
            vg.getChildAt(2).setVisibility(GONE);
        } else if (vg.getChildCount() == 5) { // 拥有 5 个下级视图
            // 有的机型显示格式为 "年|月|日“，此时隐藏第 4 个和第 5 个控件（即”|日“）
            vg.getChildAt(3).setVisibility(GONE);
            vg.getChildAt(4).setVisibility(GONE);
        }
        /**
         * 日期选择器有日历和下拉框两种展示形式，上述修改只对下拉框生效，因此在布局文件中添加月份选择器之前，要特别注意添加属性 ”android:datePickerMode="spinner"", 表示该控件采取下拉列表显示；并添加属性 “android:calendarViewShown="false"", 表示不显示日历视图
         */

    }

    public MonthPicker(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
    }

    public MonthPicker(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
        super(context, attrs, defStyleAttr, defStyleRes);
    }
}
